package com.wj.service;

import com.wj.domain.dto.AddShelfDTO;
import com.wj.domain.param.BookParam;
import com.wj.domain.vo.BookShelfVO;
import com.wj.domain.vo.BookTypeVO;
import com.wj.domain.vo.BookVO;
import com.wj.tool.common.utils.paging.QueryParameters;
import com.wj.tool.common.utils.paging.QueryResults;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

public interface BookService {

    QueryResults<BookVO> getBookPage(QueryParameters<BookParam> parameters);

    BookVO getBookById(Long bookId);

    void addView(Long id);

    int isShelf(HttpServletRequest request, Long bookId);

    List<BookVO> getBookList();

    void updateBook(Long bookId, String bookUrl);

    List<BookTypeVO> getTypeList();

    List<BookShelfVO> getMyBookShelfList();

    boolean removeBookShelf(Long bookId);

    boolean addBookShelf(AddShelfDTO shelfDTO);
}
